perm filename LOOK.FAI[MSS,LCS] blob sn#132688 filedate 1974-11-27 generic text, type T, neo UTF8
00100		TITLE LOOK
00200		INTERNAL LOOK,LOOKD,LOOKF,PAC,UNPAC
00300	
00400		CH←13
00500	
00600	REGS:	BLOCK 20
00700	
00800	;LOOK(<FILE>) FOR NO EXT., LOOKD() FOR .DAT, LOOKF() FOR .DMD
00900	
00910	LOOKF:	0
00920		MOVSI 0,'DMD'
00930		JRST LOOK1
01000	LOOKD:	0
01100		MOVSI 0,'DAT'
01200		JRST LOOK1
01210	LOOK:	0
01220		MOVEI	0,0
01230	LOOK1:	MOVEM	0,DIR+1
01240		MOVE	0,@(16)
01250		MOVEM 	0,FILNAM
01260		JSA 16, INTFIZ
01270		SETZM	DIR+2
01280		SETZM	DIR+3
01290		LOOKUP	CH,DIR
01300		TDZA	0,0
01310		MOVNI	0,1
01320		JRA 16,1(16)
03000	
03100	INTFIZ:	0	;INITS DSK FOR INPUT
03200		MOVEI REGS
03300		BLT REGS+3
03400		INIT CH,17
03500		SIXBIT/DSK/
03600		0
03650		HALT .-3
03700	;	ERROR <CAN'T INIT DSK!>
04100	
04300	INTF4:	MOVE 0,FILNAM#
04400		MOVEM 0,FN#
04500		MOVE 1,[POINT 7,FN]
04600	INTF3:	MOVE 2,[POINT 6,DIR]
04700		SETZM DIR
04800		MOVEI 3,5
04900	INTF1:	ILDB 0,1
05000		CAIN 0," "
05100		JRST INTF2
05200		SUBI 0,40
05300		IDPB 0,2
05400		SOJG 3,INTF1
05500	INTF2:	HRLZI REGS
05600		BLT 3
05700		JRA 16,0(16)
05710	
05800	DIR:	BLOCK 4
05900	
06000	
07100	PAC:	0		;CALL PAC(PW,AR)
07200		HRRZ 1,1(16)
07300		ADDI 1,2
07400		HRR 2,@1	;SIZE IS 12 BITS
07500		LSHC 2,-10
07600		SOJ 1,
07700		HRR 2,@1
07800		LSHC 2,-16
07900		SOJ 1,
08000		HRR 2,@1
08100		LSHC 2,-16
08200		MOVEM 3,@0(16)
08300		JRA 16,2(16)
08400	UNPAC:	0		;CALL UNPAC(PW,AR)
08500		HRRZ 1,1(16)
08600		ADDI 1,2
08700		MOVE 2,@0(16)
08800		LSHC 2,-10
08900		ASH 3,-34
09000		MOVEM 3,@1
09100		SOJ 1,
09200		LSHC 2,-16
09300		ASH 3,-26
09400		MOVEM 3,@1
09500		SOJ 1,
09600		LSHC 2,-16
09700		ASH 3,-26
09800		MOVEM 3,@1
09900		JRA 16,2(16)
10000		END